home *** CD-ROM | disk | FTP | other *** search
Text File | 1989-06-26 | 3.8 KB | 87 lines | [TEXT/GEOL] |
- Item 9430217 19-June-89 11:19
-
- From: D2086 Efficient Field Svc, C Faith, PRT
-
- To: MACAPP.TECH$ MACAPP Tech
-
- Sub: TDocument Rethink
-
- Larry et al.
-
- I've been out of town for a week so this is a response to a your link to Les
- Caudle.
-
- I do think that there is validity to your point that unless some window is open
- there are problems with the user knowing what noun to perform specified actions
- on.
-
- However I would like to discuss this matter in a broader scope.
-
- 1) MacApp has defined TDocument to be an object that is an integral part of
- every application (unless lots of behavior is OVERRIDDEN [is that the right
- word?]). This means that TDocument should apply to as many possible situations
- as is reasonable. TDocument should therefore map to a general user interface
- concept.
-
- 2) There is a difference between the users view of an application and
- documents and MacApp's current treatment of such.
- Specifically, the average user considers a document anything that can be
- opened from the finder by double clicking, with the exception of the
- applications themselves. This definition also includes anything that can be
- printed from the finder.
- MacApp has a much more restrictive view of documents. It treats them as
- simple documents, i.e. a letter, a picture etc. Simple documents should be
- implemented as a TSimpleDocument subclass of TDocument. The implementation of
- more complex documents would be easier and would be done through a subclass of
- TDocument.
- Obviously MacApp could not anticipate all actions of all possible documents
- hence a simple version of the document is appropriate. IT IS NOT APPROPRIATE
- HOWEVER to have MacApp using a non-general document as one of its base classes.
- The simple document should not be a base class. It should be a more specific
- implementation of a general class, much as TWindow is a more specific subclass
- of TView.
-
- 3) There are 2 steps to the process of improving MacApp that I would like to
- see implemented.
-
- A) The quicker less elegant solution that could be implemented as part of
- MacApp 2.1 which should be seen reasonably soon. This solution would
- involve making the current scenario more general through relatively
- minor changes.
-
- 1) Closing windows should not set the target to the application. This
- implies a 1 to 1 window to application correspondence. Not very
- general! At the least this should be done only if fClosesDocument is
- true.
-
- 2) Documents need to have better access to commands and the command
- chain. The current scenario forces the application object to perform
- actions that would best be done at the document level. Adding a
- document type to an application is now very involved since the
- application needs to know too much about the documents. Documents
-
- There is too much hand holding involved here. To assume that documents
- should only process commands when they have a window in front because
- doing otherwise makes it easy for the programmer to create unintuitive
- interfaces is going too far. It seriously limits the document
- metaphor.
-
- 3) I am sure there are other things that should be done. I just can't
- think of them all right now.
-
- B) The longer term MacApp 3.0 solution. This would be a rewrite and
- rethink of the entire TDocument class and its behavior to include both
- the more general case and the simple cases. It might include the
- capablities to manage groups of files and other actions that have been
- mentioned in this discussion. The exact form of this rewrite should take
- a lot of thought, and I am not able to offer as specific recommendations
- for this solution.
-
- Curtis Faith
-
-
-
-
-
-
-